package com.sunyur.tailor.channel.web.outer.supplier.dto;

import lombok.Data;

import javax.validation.constraints.NotBlank;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @ClassName SupplierParam
 * @Description 创建或更新供应商入参
 * @Author xuhui
 * @Date 2021/5/10 17:31
 * @Version 1.0
 */
@Data
public class SupplierDTO implements Serializable {

    /**
     * 机构类型(1：公司（法人）2：个体户  3：个人（自由人）  4：合作社)
     */
    private Integer institutionType;
    /**
     * 供应商编码
     */
    @NotBlank(message = "供应商编码不能为空")
    private String code;
    /**
     * 供应商简称
     */
    private String simpleName;
    /**
     * 供应商经营范围
     */
    private String scope;
    /**
     * 供应商名称
     */
    @NotBlank(message = "供应商名称不能为空")
    private String name;
    /**
     * 供应商社会统一信用代码
     */
    @NotBlank(message = "供应商社会统一信用代码不能为空")
    private String creditCode;
    /**
     * 企业类型
     * 1：国有企业 2：集体所有制 3：有限责任公司 4：股份有限公司 5：有限合伙 6：普通合伙
     * 7：联营企业 8：私营企业 9：外商投资企业 10：个人独资企业 11：港澳台 12：其他类型
     */
    private Integer companyType;
    /**
     * 法人姓名
     */
    private String legalPersonName;
    /**
     * 法人电话
     */
    private String legalPersonPhone;
    /**
     * 法人身份证
     */
    private String legalPersonID;
    /**
     * 办公地址
     */
    private String officeAddress;
    /**
     * 办公电话
     */
    private String officePhone;
    /**
     * 售后服务电话
     */
    private String afterSalePhone;

    /**
     * 注册资金（万）
     */
    private BigDecimal registeredFund;
    /**
     * 币种code(CNY)
     */
    private String currencyCode;
    /**
     * 营业期限（起）
     */
    private Date businessStartTime;
    /**
     * 营业期限（止）
     */
    private Date businessAbortTime;
    /**
     * 1:是，0:否
     * 是否永久供应商，如果为是，则营业期限至内容为空,如果填写了,会被覆盖。
     */
    private Boolean isPermanent;
    /**
     * 备注
     */
    private String remark;
    /**
     * 供应商类型(1：潜在 2：合格 3：淘汰 4：黑名单 5:临时合格)
     */
    private Integer type;
    /**
     * 机构类型(0：自然人 1：法人)
     */
    private String institutionalType;
    /**
     * 办公地址
     */
    private String address;
    /**
     * 英文名称
     */
    private String englishName;
    /**
     * 公司介绍
     */
    private String companyIntroduce;
    /**
     * 员工人数
     */
    private Integer employeeNum;
    /**
     * 注册号
     */
    private String registrationNumber;
    /**
     * 官网
     */
    private String officialWebsite;
    /**
     * "NORMAL_COMPANY": "一般企业(大陆 )",
     * "HK_COMPANY":"香港企业",
     * "LAW_FIRM":"律师事务所",
     * "PERSONAL_SUPPLIER":"个人供应商",
     * ”ABROAD":"海外供应商",
     * "SOCIAL_ORG":"社会组织"
     */
    @NotBlank(message = "供应商类型不能为空")
    private String companyCategory;
    /**
     * 社会组织 统一社会信用代码
     * 香港企业 公司编码
     * 海外供应商 根据配置 3A码 或者 DUNS码
     * 个人供应商  身份证,香港身份证,澳门身份证,护照
     * 律师事务所 统一社会信用代码
     * 一般企业  统一社会信用代码
     */
    private String creditCodeType;
    /**
     * 所在国家/地区的Code
     */
    private String countryCode;

    private String tpcode;
    /**
     * 全职员工人数
     */
    private Integer officialPersonnel;
    /**
     * 临时员工人数
     */
    private Integer temporaryPersonnel;
    /**
     * 归属集团公司
     */
    private String groupCompany;

}
